1. Field of the Invention
The present invention relates to systems and methods of object-oriented programming, and in particular to a method and system for creating composite objects from existing objects.
2. Description of the Related Art
Object oriented programming has become increasingly popular among software developers, because it offers the benefits of increased application portability, interoperability, and interchangeability. Object-oriented programming techniques also reduce development risk and software development costs, and can extend the life cycle of the final product to prevent premature obsolescence.
An industry-consensus standard interface definition for interoperable software, known as the Common Object Request Broker Architecture (COBRA) has been defined. COBRA simplifies the development and deployment of distributed systems software in several ways. First, COBRA defines a distributed environment using an object-oriented paradigm that hides differences between programming languages, operating systems, and object locations. Second, COBRA's object oriented approach allows diverse types of implementations to inter-operate at the same level, hiding idiosyncrasies and supporting reuse.
A central component of COBRA is an Object Request Broker (ORB), which functions as a communications infrastructure, transparently transceiving object requests across distributed heterogeneous computing environments. This is accomplished through a well-defined interface called the Interface Definition Language (IDL). Further details regarding COBRA are set forth in "The Essential Cobra, Systems Integration Using Distributed Objects," by Thomas W. Mobray and Ron Zahavi, 1995, which publication is hereby incorporated by reference herein.
Toolkits are available to support the COBRA programming model and allow users to use visual tools to generate applications by creating new objects, edit existing objects, generate dynamic link libraries (DLLs), and package applications so they can be published to a server.
However, although existing tools allow new objects to be defined and edited, these tools do not allow the user to create composite objects by combining user-selectable elements of existing objects under user-definable rules. What is needed is a system and method which allow the user to create new objects by combining elements of existing objects and which provides a simple and intuitive interface for doing so. The present invention satisfies that need.